]> dgit.raspbian.org Git - gnome-shell.git/log
gnome-shell.git
5 years agoappDisplay: Expand titles on keyboard focus as well
Georges Basile Stavracas Neto [Fri, 13 Nov 2020 17:35:29 +0000 (14:35 -0300)]
appDisplay: Expand titles on keyboard focus as well

In addition to hover, expand wrapped app titles when keyboard
focus is in as well. This gives keyboard users a chance to
read the app name.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3333

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1496

5 years agoappDisplay: Factor out function
Georges Basile Stavracas Neto [Fri, 13 Nov 2020 17:34:22 +0000 (14:34 -0300)]
appDisplay: Factor out function

The function to update the multiline state of the title label
will be reused by the next commit, so move it into a separate
method.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1496

5 years agoappDisplay: Adjust label collapse and expand times
Georges Basile Stavracas Neto [Fri, 13 Nov 2020 17:33:32 +0000 (14:33 -0300)]
appDisplay: Adjust label collapse and expand times

As per design feedback, these times are too slow.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3333

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1496

5 years agoci: Enforce non-legacy style for new code
Florian Müllner [Mon, 9 Nov 2020 19:24:34 +0000 (20:24 +0100)]
ci: Enforce non-legacy style for new code

We have been transitioning to the new coding style for a while now,
and there has been reasonable progress. So hopefully it is not too
intrusive at this point to enforce non-legacy style for all lines
that are changed in a merge request. If it turns out to be still too
annoying, we can always reconsider and turn off the additional job.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1497

5 years agoci: Use junit output format
Florian Müllner [Sat, 7 Nov 2020 06:36:26 +0000 (07:36 +0100)]
ci: Use junit output format

Gitlab has built-in support for junit reports, so switch eslint's
output to that format.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1497

5 years agoci: Use node-js script for running eslint
Florian Müllner [Sat, 7 Nov 2020 06:11:09 +0000 (07:11 +0100)]
ci: Use node-js script for running eslint

This is unnecessary hard in shell when compared to a proper programming
language. It becomes even easier with a node-js script, as that gives us
access to the underlying ESLint module rather than just the CLI interface.

Besides that, node-js has the added benefit that we don't need to add
more dependencies to the CI image.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1497

5 years agoextensions-app: Add extension filtering
Florian Müllner [Wed, 11 Nov 2020 01:37:20 +0000 (02:37 +0100)]
extensions-app: Add extension filtering

It's possible for the list of installed extension to get long
enough to make searching more convenient than scrolling.

Support that by implementing the standard search pattern[0]
with a hidden search bar and a toggle in the headerbar.

[0] https://developer.gnome.org/hig/stable/search.html.en

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3382

5 years agoappDisplay: don't change grid page on adaptToSize
Daniel García Moreno [Thu, 12 Nov 2020 09:38:17 +0000 (10:38 +0100)]
appDisplay: don't change grid page on adaptToSize

If the adapt to size occurs after the grid page has been changed the
page is set to zero. This patch just keep the current page with the same
value that it has before.

Fix https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3388

5 years agoUpdate Portuguese translation
Juliano de Souza Camargo [Wed, 11 Nov 2020 14:29:12 +0000 (14:29 +0000)]
Update Portuguese translation

(cherry picked from commit e93b8263b03ed8bbb3829ad82ebf3664197740c9)

6 years agomodemManager: Add property getters
Popax21 [Thu, 15 Oct 2020 15:14:55 +0000 (15:14 +0000)]
modemManager: Add property getters

gjs improved its default property getter/setters, and as a result it
is no longer possible to set read-only properties.

Add proper getters (backed by private properties) to fix the resulting
errors.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3203

6 years agognome-shell.doap: Mailing list moved to Discouse per #3253
Olav Vitters [Mon, 2 Nov 2020 13:45:13 +0000 (14:45 +0100)]
gnome-shell.doap: Mailing list moved to Discouse per #3253

6 years agoUpdated Danish translation
Ask Hjorth Larsen [Sun, 1 Nov 2020 13:18:43 +0000 (14:18 +0100)]
Updated Danish translation

6 years agoUpdate Basque translation
Asier Sarasua Garmendia [Sat, 31 Oct 2020 17:00:06 +0000 (17:00 +0000)]
Update Basque translation

6 years agoappDisplay: Only show add/remove favorite when shouldShowApp() is true
Ian Douglas Scott [Fri, 30 Oct 2020 16:57:40 +0000 (09:57 -0700)]
appDisplay: Only show add/remove favorite when shouldShowApp() is true

`shouldShowApp()` is called in `_addFavorite`, so adding a favorite when
this isn't true won't work. Also, it seems when this is false, favorites
that do exist won't be shown anyway.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3342

6 years agoextensions-app: Add quit action
Florian Müllner [Wed, 28 Oct 2020 20:42:48 +0000 (21:42 +0100)]
extensions-app: Add quit action

It's good practice to support the standard <ctrl>-q shortcut, so
add a corresponding action and set its accel accordingly.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3335

6 years agomagnifier: Avoid cursor visibility changes on startup
Carlos Garnacho [Wed, 28 Oct 2020 19:29:55 +0000 (20:29 +0100)]
magnifier: Avoid cursor visibility changes on startup

When initializing the shell, we create the magnifier, and (normally)
let it disabled. This still toggles cursor visibility on, which is
not right since there's other considerations to take during
initialization.

Only do this after actual changes to the magnifier state, so
initialization is left unperturbed.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1486

6 years agomessageTray: Don't play sound when banners are disabled
Florian Müllner [Tue, 27 Oct 2020 00:03:43 +0000 (01:03 +0100)]
messageTray: Don't play sound when banners are disabled

When support for notification sounds was added, it made some sense
to keep the 'enable-sound' setting independent from 'show-banners'.

However that changed when 'show-banners' was rebranded in the UI as
"Do Not Disturb", as sounds are at least as disturbing as the banners.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2873

6 years agoAdapt to pick changes
Georges Basile Stavracas Neto [Sat, 17 Oct 2020 15:34:22 +0000 (12:34 -0300)]
Adapt to pick changes

It turns out, StViewport's pick implementation was broken, since
Clutter stopped reading clipping from the framebuffer. Rejoice with
bugfixing by removing code!

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1470

6 years agowindowPreview: Handle case where window already is part of layout
Jonas Dreßler [Sat, 24 Oct 2020 18:51:56 +0000 (20:51 +0200)]
windowPreview: Handle case where window already is part of layout

We sometimes add dialogs multiple times to the WindowPreview, for
example for modal dialogs we receive both the "window-added" and the
"window-entered-monitor" signal, which means we call
WindowPreview.addDialog() twice.

We handle that fine already in the WindowPreviewLayout and return NULL
in case the window already was added, so simply handle that NULL return
value and bail out of WindowPreview.addDialog() in this case.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1482

6 years agompris: Switch text in title and body
Harry Míchal [Sat, 24 Oct 2020 15:07:10 +0000 (15:07 +0000)]
mpris: Switch text in title and body

Most media players have a media player that shows the title of a song
and artists in the song. In those media players the title is
highlighted (bold text) and the list of artists is under the title.
Shell does the exact opposite in the player in the notification area.

Example media players: Spotify, Rhythmbox, GNOME Music

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1480

6 years agotests/background-size: Remove ClutterActor::paint signal handler usage
Jonas Dreßler [Fri, 23 Oct 2020 20:05:13 +0000 (22:05 +0200)]
tests/background-size: Remove ClutterActor::paint signal handler usage

The background-size interactive test includes a test-case which uses the
ClutterActor::paint signal to hijack the painting of the actor. We're
removing that signal from Clutter, so remove that signal handler and
paint the outer border unconditionally to mark the boundaries of the
widget (the outer border actually never worked to force the cairo/cogl
path). To fix the test, change it to not paint a border on the inner
container in the useCairo=false case, which should make sure the cogl
path gets used.

Also remove the useless useCairo argument from addTestLine().

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1479

6 years agotelepathyClient: Promisify the right class
Florian Müllner [Thu, 22 Oct 2020 19:09:35 +0000 (21:09 +0200)]
telepathyClient: Promisify the right class

send_message_async() is a method of TpTextChannel, not the generic
TpChannel parent class.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3226

6 years agoUpdated Spanish translation
Daniel Mustieles [Thu, 22 Oct 2020 06:56:43 +0000 (08:56 +0200)]
Updated Spanish translation

6 years agoappDisplay: Don't expand title for search results
Georges Basile Stavracas Neto [Wed, 21 Oct 2020 20:20:59 +0000 (17:20 -0300)]
appDisplay: Don't expand title for search results

It creates quite a nasty visual inconsistency where the
search results' icon title overflows beneath the next
search section.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1477

6 years agoappDisplay: Let icon labels be multiline when hovered
Georges Basile Stavracas Neto [Wed, 21 Oct 2020 17:33:23 +0000 (14:33 -0300)]
appDisplay: Let icon labels be multiline when hovered

When hovered, remove constraints from the icon labels that
limit the number of lines. Do that inside a saved easing
state so that the allocation can ease the label.

This helps with applications with long titles.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/363

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1477

6 years agoiconGrid: Allocate preferred sizes if bigger than child size
Georges Basile Stavracas Neto [Wed, 21 Oct 2020 18:40:20 +0000 (15:40 -0300)]
iconGrid: Allocate preferred sizes if bigger than child size

IconGridLayout uses the biggest minimum size to allocate its
children. Next commit will make app icons with long names show
not ellipsize on hover, and it is important that the icon itself
is able to follow that.

Use preferred size if it's bigger than the minimum size.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1477

6 years agoiconGrid: Trivial style cleanup
Georges Basile Stavracas Neto [Wed, 21 Oct 2020 15:58:29 +0000 (12:58 -0300)]
iconGrid: Trivial style cleanup

Turns out, we only needed a gentle push to get this whole
file fit in.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1477

6 years agoaudioDeviceSelection: Center-align icons
Florian Müllner [Wed, 21 Oct 2020 01:29:18 +0000 (03:29 +0200)]
audioDeviceSelection: Center-align icons

When the icon area gets allocated additional space, we want the
icons centered rather than left-aligned. This may happen in locales
with long-ish translations for the title or buttons when only a
subset of possible icons is shown.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3307

6 years agodnd: Get transformed size for scaling before unparenting drag actor
Jonas Dreßler [Tue, 20 Oct 2020 23:02:37 +0000 (01:02 +0200)]
dnd: Get transformed size for scaling before unparenting drag actor

Commit de610a13f1ad1e7e34d4b9a81df58d4da3693059 in mutter made it
impossible to access the actors last allocation after unmapping it,
this broke the scale-up/down animation when starting a drag.

Fix that animation again by saving the actors transformed size before
unparenting (and therefore unmapping) the actor instead of afterwards.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1475

6 years agoUpdate Esperanto translation
Carmen Bianca BAKKER [Tue, 20 Oct 2020 08:57:06 +0000 (08:57 +0000)]
Update Esperanto translation

6 years agoStop using GSlice
Robert Mader [Mon, 19 Oct 2020 18:12:27 +0000 (20:12 +0200)]
Stop using GSlice

It has been inofficially deprecated for years, is known to cause issues
with valgrind and potentially hides memory corruption.
Lets stop using it.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1473

6 years agoscreenshot: Handle window screenshot failures gracefully
Florian Müllner [Sun, 18 Oct 2020 14:01:05 +0000 (16:01 +0200)]
screenshot: Handle window screenshot failures gracefully

meta_window_actor_get_image() may return NULL. Instead of crashing,
catch that case and return a proper error.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3258

6 years agoUpdate Friulian translation
Fabio Tomat [Sun, 18 Oct 2020 14:48:26 +0000 (14:48 +0000)]
Update Friulian translation

6 years agoAdapt to CoglFramebuffers turning into GObjects
Jonas Ådahl [Tue, 13 Oct 2020 13:51:22 +0000 (15:51 +0200)]
Adapt to CoglFramebuffers turning into GObjects

Requires some more explicit type casting as things turned into 'void *'
less. Also memory management changes, as we can't use CoglObject
functions anymore for these objects.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1465

6 years agodata: Remove unused GSettings key
Florian Müllner [Thu, 15 Oct 2020 17:10:46 +0000 (19:10 +0200)]
data: Remove unused GSettings key

We no longer have multiple app picker views, so there's no point
in remembering the last one.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1469

6 years agoremoteAccess: Ignore all but the screen record handles on X11
Jonas Ådahl [Tue, 13 Oct 2020 14:28:51 +0000 (16:28 +0200)]
remoteAccess: Ignore all but the screen record handles on X11

We still want to show the red dot when recording the screen on X11, so
only drop the "screen-is-shared" handles when using the X11 session.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3279
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1466

6 years agodocs: Unify on single DocBook version
Jan Tojnar [Tue, 13 Oct 2020 00:58:16 +0000 (02:58 +0200)]
docs: Unify on single DocBook version

DocBook 4.5 is backwards compatible.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1464

6 years agoUpdate Bengali (India) translation
Akarshan Biswas [Sun, 11 Oct 2020 07:04:50 +0000 (07:04 +0000)]
Update Bengali (India) translation

(cherry picked from commit 296af6e1e8c80d400cec91926adcf71b4ec1aec1)

6 years agoUpdate Portuguese translation
Juliano de Souza Camargo [Sat, 10 Oct 2020 00:21:48 +0000 (00:21 +0000)]
Update Portuguese translation

(cherry picked from commit 59dd5d58ae6952c599f8fc73d4e0fc27d8363892)

6 years agopolkitAgent: Drop separate user icon style
Florian Müllner [Thu, 8 Oct 2020 18:47:18 +0000 (20:47 +0200)]
polkitAgent: Drop separate user icon style

It should use the same style as used elsewhere (like the lock screen),
so stop using a separate style class to pick up the defaults.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3252

6 years agoUpdate Friulian translation
Fabio Tomat [Fri, 9 Oct 2020 11:49:53 +0000 (11:49 +0000)]
Update Friulian translation

6 years agoscreenShield: Fix pointer motion signal handler leak
Ray Strode [Tue, 29 Sep 2020 02:28:08 +0000 (22:28 -0400)]
screenShield: Fix pointer motion signal handler leak

The screen shield code listens for motion events on the stage
so that it can hide the pointer until the user moves the mouse.

Unfortunately, if the user never moves the mouse, the signal
handler connection gets leaked.

This commit makes sure the connection gets disconnected when the
shield goes away.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1459

6 years agoscreenShield: Use identity operator when matching for motion events
Ray Strode [Thu, 8 Oct 2020 13:36:30 +0000 (09:36 -0400)]
screenShield: Use identity operator when matching for motion events

The screen shield watches for motion events to know to display
the pointer when the user wiggles their mouse.

It checks for motion events by looking at the event type and
seeing if it is of type `Clutter.EventType.MOTION`.  To do this
comparison it uses the equality operator (==).  Using the equality
operator isn't considered best practice, because it can returns true
when comparing disparate types, if those types happen to be equivalent
after coersion.

From a code resiliance point of view, it's better to use the
identity operator (===), which requires both sides of the comparison
to be of the same type.

As a policy, any legacy code that gets changed or moved should be
switched away from the equality operator to the identity operator, if
appropriate.

This commit makes that change as prep work for a fix to that part of
the code.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1459

6 years agowindowManager: Avoid calling meta_window_actor_thaw when not frozen
Daniel van Vugt [Fri, 2 Oct 2020 08:33:31 +0000 (16:33 +0800)]
windowManager: Avoid calling meta_window_actor_thaw when not frozen

Because that tends to crash in:
```
g_error ("Error in freeze/thaw accounting");
```

Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/1431
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1453

6 years agoenvironment: Handle @content for property transitions
Andre Moreira Magalhaes [Wed, 7 Oct 2020 23:21:04 +0000 (20:21 -0300)]
environment: Handle @content for property transitions

When using `Actor.ease_property` if the property starts with '@' and the
duration of the transition is zero (which may happen if the actor is not
mapped even if a non-zero duration was passed to `ease_property`), the
impl will try getting the actual target object where the property should
be set.

This works fine for most cases but it currently throws an error when
passing '@content.*' properties. Fix this by handling '@content' as
a property of `actor.content` (used by MetaBackgroundActor when
showing the overview).

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1461

6 years agopanel: Disconnect destroy signal handler when needed
Ray Strode [Tue, 6 Oct 2020 14:29:00 +0000 (10:29 -0400)]
panel: Disconnect destroy signal handler when needed

The panel corners try to match their style to the buttons closest
to them. In order to make sure the corner styles stay in sync with
their neighboring buttons, they connect to the style-changed signals
of the buttons.

In order to make sure the style-changed signal handler isn't leaked,
it gets disconnected when the button is destroyed.

Unfortunately, the destroy signal handler connection itself gets leaked!

This commit ensures the destroy signal handler gets disconnected any
time the neighboring button is re-determined.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1460

6 years agounlockDialog: Use unique unlock-dialog style class
Joonas Henriksson [Wed, 26 Aug 2020 00:06:46 +0000 (03:06 +0300)]
unlockDialog: Use unique unlock-dialog style class

Allows styling the unlock dialog elements individually from the GDM
login dialog.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1421

6 years agoUpdate Portuguese translation
Juliano de Souza Camargo [Wed, 7 Oct 2020 12:55:57 +0000 (12:55 +0000)]
Update Portuguese translation

(cherry picked from commit 9f247879a88024478c81dae19c1899eee7668092)

6 years agoshell: Update to MetaCursorTracker API change
Carlos Garnacho [Mon, 20 Jul 2020 10:08:43 +0000 (12:08 +0200)]
shell: Update to MetaCursorTracker API change

The pointer coordinates in meta_cursor_tracker_get_pointer() are now
returned as a graphene_point_t.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1405

6 years agoReplace CoglMatrix by graphene_matrix_t
Georges Basile Stavracas Neto [Fri, 11 Sep 2020 18:49:29 +0000 (15:49 -0300)]
Replace CoglMatrix by graphene_matrix_t

Replace both the types, and the cogl_matrix_* API calls
with the corresponding graphene_matrix_* ones.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1436

6 years agoextensionUtils: Adjust version check
Florian Müllner [Mon, 5 Oct 2020 13:24:01 +0000 (15:24 +0200)]
extensionUtils: Adjust version check

With the new versioning scheme, the previously-minor version gets
shifted up to major, and unstable releases are marked by non-numeric
"versions" rather than uneven numbers. Reflect that in the extension
version check.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1456

6 years agoBump version to 40.alpha
Florian Müllner [Mon, 5 Oct 2020 12:40:30 +0000 (14:40 +0200)]
Bump version to 40.alpha

The GNOME project has adopted a new versioning scheme[0], and
GNOME 3.38 will be followed by GNOME 40.

Open the new development cycle by switching to the new scheme, as
well as to post-release bumps as recommended.

[0] https://discourse.gnome.org/t/new-gnome-versioning-scheme/4235

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1456

6 years agoBump version to 3.38.1
Florian Müllner [Mon, 5 Oct 2020 18:25:47 +0000 (20:25 +0200)]
Bump version to 3.38.1

Update NEWS.

6 years agoworkspacesView: Work around Clutter optimization
Florian Müllner [Sat, 3 Oct 2020 08:12:13 +0000 (10:12 +0200)]
workspacesView: Work around Clutter optimization

Clutter nowadays omits reallocations when only the stage position
changed, that is when the allocation relative to the parent changed.

As a result (apart from better performance of course), workspaces
in the overview may now end up with an outdated "actual geometry"
in case the overview moved to a new primary monitor (of equal size
as the previous one).

Work around that by emitting a signal from the overview on allocation
changes, and use that to update the cached geometry.

We can revert that change once workspaces become part of the regular
overview hierarchy.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3211

6 years agoappDisplay: Protect against source icon destruction
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 21:57:56 +0000 (18:57 -0300)]
appDisplay: Protect against source icon destruction

When dragging icons out of a folder dialog, there is a very peculiar
combination of steps that may break GNOME Shell:

 1. Open an app folder dialog
 2. Start dragging an icon to outside the grid
 3. Wait until the popdown animation starts
 4. Before it finishes, drop the icon
 5. See the warnings / crash

That's caused by the source icon being destroyed after the delayed
move timer starts, and before it finishes.

Protect against the source icon being destroyed before the delayed
move timeout triggers by connecting to the 'destroy' signal and
removing the timeout on the callback. Use a single field, called
'_delayedMoveData', to store all data related to delayed moves.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Remove icon from folder when dragging out
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 19:06:01 +0000 (16:06 -0300)]
appDisplay: Remove icon from folder when dragging out

When dragging an icon outside of a folder dialog, there's a small delay
before the dialog pops down. If the icon is dropped during this delay,
the drag is cancelled, and the icon continues to be in the folder.

However, this behavior turned out to be problematic, and it was a common
point of failure that throwing icons outside folders wouldn't work.

Remove the icon from the folder when dragging it to outside the dialog.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3092

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Allow passing callback to AppFolderDialog.popdown()
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 19:31:00 +0000 (16:31 -0300)]
appDisplay: Allow passing callback to AppFolderDialog.popdown()

Next commit will allow removing icons from the folder, and we want to
do that effectively after the dialog pops down.

Add an optional callback to AppFolderDialog.popdown().

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Don't change opacity on destruction
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 18:57:12 +0000 (15:57 -0300)]
appDisplay: Don't change opacity on destruction

At the end of BaseAppView._clearAnimateLater(), the '_grid' actor's opacity is
set to 255. As it turns out, _clearAnimateLater() is called, among others, by
vfunc_unmap(). However, unmapping is part of the destruction process, and at
the time it is called, '_grid' is already destroying, which makes GJS complain
about accessing an invalid object.

Don't change opacity on BaseAppView._clearAnimateLater(), and instead move it
to the couple of places outside vfunc_unmap() that call it.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Save pages when folder apps change
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 17:16:48 +0000 (14:16 -0300)]
appDisplay: Save pages when folder apps change

After dragging an icon to inside a folder, we do not save the grid layout,
leaving the icon's position stored when it actually isn't there anymore.

Fix that by saving pages whenever folder apps change.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Don't emit 'apps-changed' when deleting folder
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 16:36:40 +0000 (13:36 -0300)]
appDisplay: Don't emit 'apps-changed' when deleting folder

To delete a folder, FolderView needs to reset all keys under that particular
folder's GSettings path. That generates 5 'changed' signals, all of which
end up calling AppDisplay._redisplay(), which is costly.

Don't emit 'apps-changed' when deleting a folder.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Only change excluded-apps when not deleting folder
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 15:41:27 +0000 (12:41 -0300)]
appDisplay: Only change excluded-apps when not deleting folder

It is useless to update the 'excluded-apps' list when we know we're going
to delete the folder entirely.

Only update 'excluded-apps' when not deleting the app folder.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Trivial const-correctness fix
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 15:17:58 +0000 (12:17 -0300)]
appDisplay: Trivial const-correctness fix

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Adjust folder position
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 15:00:03 +0000 (12:00 -0300)]
appDisplay: Adjust folder position

If you try and drop an icon that's in the same page, but before the
drop target, it'll be one position ahead of where it should be -
because we just removed one icon before the target position.

Adjust the final position of the to-be-created folder.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Reduce folder dialog popdown timeout
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 14:59:35 +0000 (11:59 -0300)]
appDisplay: Reduce folder dialog popdown timeout

1500ms is too long of a delay, and it confuses people more than it
helps with accidental drops.

Reduce the timeout to 500ms as per design feedback.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3092

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Lighten folder dialog background when dragging out
Georges Basile Stavracas Neto [Thu, 24 Sep 2020 13:17:53 +0000 (10:17 -0300)]
appDisplay: Lighten folder dialog background when dragging out

As per design feedback, make the app folder dialog background lighter when
hovering it with an icon. This gives the visual feedback to show that that
region is a target.

Use the new DIALOG_SHADE_NORMAL variable in the other places where its color
was hardcoded.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3092

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Use new moveItem API to move items
Georges Basile Stavracas Neto [Wed, 23 Sep 2020 19:53:17 +0000 (16:53 -0300)]
appDisplay: Use new moveItem API to move items

This uses the API added in the previous commit. The intent here
is to avoid removing and readding actors when moving them around.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3165

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoiconGrid: Add moveItem
Georges Basile Stavracas Neto [Wed, 23 Sep 2020 19:52:09 +0000 (16:52 -0300)]
iconGrid: Add moveItem

This new public API moves items without removing and readding
them, which allows us to avoid some tricky behavior. Noticeably,
following the original design described at 3555550d5, the new
IconGridLayout.moveItem() method does not call `layout_changed`.
This is done by IconGrid itself, queueing a relayout.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoappDisplay: Factor out linear position calculation
Georges Basile Stavracas Neto [Wed, 23 Sep 2020 19:48:43 +0000 (16:48 -0300)]
appDisplay: Factor out linear position calculation

When adding an item to the app grid, the item is added to
a sorted array. This is calculated by adding all visible
items in pages before the one being modified. Future commits
will need this to move items without reparenting them, so
factor this code into a separate function.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

6 years agoworkspacesView: Update workspace visibility when entering overview
Florian Müllner [Fri, 2 Oct 2020 17:26:46 +0000 (19:26 +0200)]
workspacesView: Update workspace visibility when entering overview

This was missed in commit 96f63b08c24 when splitting the combined
layout+scrolling method into allocation and translation.

Add it back to prevent windows from other windows leaking into view
during the transition.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3208

6 years agoworkspacesView: Always clip to allocation
Florian Müllner [Mon, 31 Aug 2020 19:11:18 +0000 (21:11 +0200)]
workspacesView: Always clip to allocation

We couldn't clip workspaces views during the overview transition
when we used the "porthole" approach, but as view's allocation
now always matches the expected visible area, we can just apply
the clip unconditionally.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3208

6 years agodash: Restore icon's expected DND behavior
Florian Müllner [Fri, 2 Oct 2020 15:10:42 +0000 (17:10 +0200)]
dash: Restore icon's expected DND behavior

Commit ff3d32dd186fa added a custom DashIcon subclass that disables
all DND methods from ancestors, including canceling the context
menu timeout and emitting the overview's item-drag-begin signal.

All we want is opting out of the parent's scale-and-fade behavior,
so override those methods instead.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3209

6 years agoshell: Do not use stack-allocated ClutterEvents
Carlos Garnacho [Thu, 24 Sep 2020 16:19:44 +0000 (18:19 +0200)]
shell: Do not use stack-allocated ClutterEvents

All events should be allocated.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1451

6 years agoUpdate Hebrew translation
Yosef Or Boczko [Mon, 28 Sep 2020 17:20:09 +0000 (17:20 +0000)]
Update Hebrew translation

6 years agodocs: Remove obsolete ShellRecorder include
Florian Müllner [Fri, 25 Sep 2020 16:24:09 +0000 (18:24 +0200)]
docs: Remove obsolete ShellRecorder include

It joined the invisible choir, so trying to build with gtk-docs
enabled is currently broken (mea culpa for not having caught that
during distcheck).

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1448

6 years agodateMenu: Do not ellipsize date header
Florian Müllner [Thu, 24 Sep 2020 02:46:47 +0000 (04:46 +0200)]
dateMenu: Do not ellipsize date header

Currently the width of the calendar column is solely determined
by the calendar, while other elements are ellipsized as necessary.

While that is the desired behavior for the events-, world clocks-
and weather sections, we don't want to cut off the date in the
header. However switching to bold text made that more likely in
non-English locales or when using large text, so explicitly take
it into account for the width negotiation.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2230

6 years agoauthPrompt: set value of beginRequestType to 'DONT_PROVIDE_USERNAME'
yun341 [Mon, 21 Sep 2020 14:11:41 +0000 (22:11 +0800)]
authPrompt: set value of beginRequestType to 'DONT_PROVIDE_USERNAME'

Commit 809f820c introduct vmware SSO service to gnome-shell, the value
beginRequestType should be set to 'DONT_PROVIDE_USERNAME', otherwise
vmware sso will fail. This patch will fix it.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1443
6 years agoUpdate Chinese (Taiwan) translation
Cheng-Chia Tseng [Tue, 22 Sep 2020 15:06:54 +0000 (15:06 +0000)]
Update Chinese (Taiwan) translation

6 years agoCSS: Add border around avatars
Christopher Davis [Tue, 22 Sep 2020 02:45:13 +0000 (19:45 -0700)]
CSS: Add border around avatars

Avatars in https://gitlab.gnome.org/Teams/Design/os-mockups/-/blob/master/lock-login/lock-screen.png
have a white circular border around them.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/379

6 years agoUpdate French translation
Charles Monzat [Tue, 22 Sep 2020 11:59:10 +0000 (11:59 +0000)]
Update French translation

6 years agoauthPrompt: Hide password when insensitive
Florian Müllner [Wed, 9 Sep 2020 19:06:22 +0000 (21:06 +0200)]
authPrompt: Hide password when insensitive

The purpose of password peeking is to spot and correct errors;
the latter isn't possible when the entry is non-editable, so
we can hide the password again while authentication is ongoing.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3138

6 years agost/entry: Only handle primary/secondary icon clicks when reactive
Florian Müllner [Wed, 9 Sep 2020 18:51:53 +0000 (20:51 +0200)]
st/entry: Only handle primary/secondary icon clicks when reactive

Just like the internal ClutterText, the icon actors are part of the
entry. It therefore makes sense for the icons to not react to clicks
when the entry itself is non-reactive; again, just like the text.

That behavior is also consistent with icons in GTK entries.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3138

6 years agosubprojects: Update libgvc
Bastien Nocera [Mon, 21 Sep 2020 09:06:56 +0000 (11:06 +0200)]
subprojects: Update libgvc

This update is necessary to add support for recent UCM related changes
in ALSA and PulseAudio.

See https://gitlab.gnome.org/GNOME/libgnome-volume-control/-/merge_requests/10

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1444

6 years agoUpdate Portuguese translation
Juliano de Souza Camargo [Sun, 20 Sep 2020 02:40:32 +0000 (02:40 +0000)]
Update Portuguese translation

6 years agoAdd Kabyle translation
Yacine Bouklif [Sat, 19 Sep 2020 11:25:42 +0000 (11:25 +0000)]
Add Kabyle translation

6 years agoappDisplay: Disconnect from parental controls on destroy
Georges Basile Stavracas Neto [Wed, 16 Sep 2020 17:44:49 +0000 (14:44 -0300)]
appDisplay: Disconnect from parental controls on destroy

BaseAppView not disconnecting from the 'app-filter-changed'
signal means parental controls may trigger callbacks on
a destroyed grid, which tries to access destroyed icons,
which spams the journal with stack traces.

Disconnect from parental controls when BaseAppView is destroyed.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1441

6 years agoUpdate Portuguese translation
Juliano de Souza Camargo [Tue, 15 Sep 2020 17:50:42 +0000 (17:50 +0000)]
Update Portuguese translation

6 years agoappDisplay: Don't iterate over all pages in page manager
Daniel García Moreno [Thu, 10 Sep 2020 14:30:15 +0000 (16:30 +0200)]
appDisplay: Don't iterate over all pages in page manager

In getAppPosition it's not needed to continue looking for an app in the
page manager if the app is found in a page.

This patch breaks the search loop just after the first ocurrence is
found.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1434

6 years agodbusServices/screencast: Add recordings to recent items
Florian Müllner [Mon, 14 Sep 2020 17:55:17 +0000 (19:55 +0200)]
dbusServices/screencast: Add recordings to recent items

This is useful functionality that got lost when replacing the built-in
recorder with an external screencast service; bring it back.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3171

6 years agosystemActions: Filter out empty (folded) terms
Florian Müllner [Sat, 12 Sep 2020 16:32:57 +0000 (18:32 +0200)]
systemActions: Filter out empty (folded) terms

We split the search string into words using whitespace, while
GLib.tokenize_and_fold() splits on any non-alphanumeric characters.

That is, a valid search term like ',' will be tokenized as [], so
the original non-empty terms may get mapped to an empty array.

And as [].every() returns true for any condition[0], we end up
matching *all* system actions in that case. We want the exact
opposite and not return any results, so handle that case explicitly.

[0] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3169

6 years agosystemActions: Flatten folded search terms
Florian Müllner [Sat, 12 Sep 2020 16:27:45 +0000 (18:27 +0200)]
systemActions: Flatten folded search terms

GLib.str_tokenize_and_fold() returns an array rather than a string
(the "tokenize" bit), so flatten the folded search terms like we
do for keywords.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3169

6 years agoBump version to 3.38.0
Florian Müllner [Mon, 14 Sep 2020 15:50:43 +0000 (17:50 +0200)]
Bump version to 3.38.0

Update NEWS.

6 years agoaggregateMenu: Move remote-access indicator to the front
Florian Müllner [Mon, 14 Sep 2020 14:58:53 +0000 (16:58 +0200)]
aggregateMenu: Move remote-access indicator to the front

It's best to not mix transient indicators with (probably) permanently
visible items, so move the remote-access indicator (which also handles
screencasts now) to the position of the old screen recorder icon.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1438

6 years agoUpdate Latvian translation
Rūdolfs Mazurs [Sat, 12 Sep 2020 09:36:38 +0000 (09:36 +0000)]
Update Latvian translation

6 years agoUpdate zh_CN translation
Aron Xu [Thu, 10 Sep 2020 14:34:02 +0000 (22:34 +0800)]
Update zh_CN translation

6 years agoUpdate Italian translation
Milo Casagrande [Thu, 10 Sep 2020 08:12:05 +0000 (08:12 +0000)]
Update Italian translation

6 years agoUpdate Portuguese translation
Juliano Camargo [Thu, 10 Sep 2020 00:26:54 +0000 (00:26 +0000)]
Update Portuguese translation

6 years agoUpdate Finnish translation
Jiri Grönroos [Wed, 9 Sep 2020 21:59:48 +0000 (21:59 +0000)]
Update Finnish translation

6 years agoUpdate French translation
Claude Paroz [Wed, 9 Sep 2020 07:43:12 +0000 (09:43 +0200)]
Update French translation

6 years agoUpdate German translation
Tim Sabsch [Wed, 9 Sep 2020 06:06:49 +0000 (06:06 +0000)]
Update German translation

6 years agoStAdjustment: note when 'changed' is not emitted
Andy Holmes [Mon, 7 Sep 2020 22:54:21 +0000 (15:54 -0700)]
StAdjustment: note when 'changed' is not emitted

Like `GtkAdjustment`, `StAdjustment:changed` is not emitted for the
`value` property except when changed with `st_adjustment_set_values()`.

Note this behaviour in the signal documentation

closes https://gitlab.gnome.org/GNOME/gnome-shell/issues/3147